package com.example.excelapache_poi.apache_poi操作excel;
import org.apache.poi.hssf.usermodel.*;
import java.io.FileOutputStream;
import java.io.IOException;

/**
 * Created by IntelliJ IDEA2022.3.2
 * @Author: Tenghw
 * @Date: 2023/07/02  13:32
 * @Description: Excel表单元格控制 —— 单元格对齐
 */
public class Demo4 {
    public static void main(String[] args) throws IOException {
        // 1.文件路径
        String filePath = "E:\\exceldemo\\Demo4.xls";
        // 2.创建Excel文件（Workbook）
        HSSFWorkbook workbook = new HSSFWorkbook();
        // 3.创建工作表（Sheet）
        HSSFSheet sheet = workbook.createSheet("Sheet4");
        // 4.创建行（Row），从0开始
        HSSFRow row = sheet.createRow(0);

        // 5.创建行的单元格（Cell，即列），也是从0开始
        HSSFCell cell = row.createCell(0);
        cell.setCellValue("单元格对齐123456789");
        HSSFCellStyle style = workbook.createCellStyle();
        // 水平居中
        style.setAlignment(HSSFCellStyle.ALIGN_CENTER);
        // 垂直居中
        style.setVerticalAlignment(HSSFCellStyle.VERTICAL_CENTER);
        // 自动换行
        style.setWrapText(true);
        // 缩进
        style.setIndention((short) 5);
        // 文本旋转，这里的取值是从-90到90，而不是0-180度。
        style.setRotation((short)0);

        cell.setCellStyle(style);

        // 6.文件输出流
        FileOutputStream out = new FileOutputStream(filePath);
        // 保存到Excel文件中
        workbook.write(out);

        // 7.关闭流
        out.flush();
        out.close();
        workbook.close();
        System.out.println("单元格对齐设置OK！");
    }
}
